// vue-router中也用到了单例模式 因为如果一个页面有多个路由对象 可能造成状态的冲突
// vue-router的单例实现方式又有点不一样

let _Vue;
function install(Vue) {
    if(install.installed && _Vue === Vue) return;
    install.installed = true;

    _Vue = Vue;
}   


// 分析： 每次调用vue.use(vueRouter)的时候其实都会执行vue-router模块install方法 
// 如果用户不小心多次调用了vue.use(vueRouter)就会造成install的多次执行 从而产生不对的结果。
// vue-router的install在第一次执行时 将installed属性写成了true 并且记录了当前的Vue 
// 这样后面在同一个Vue里面执行install 就会直接return了 这也是一种单例模式